The present invention claims foreign priority under 35 U.S.C. § 119 based on Korean Patent Application No. 10-2003-0012900, filed Feb. 28, 2003, the contents of which are incorporated herein by reference
1. Field of the Invention
The present invention relates to a wireless communication apparatus and method, and more particularly, to a wireless communication apparatus and method capable of supporting Quality of Service (QoS) by link layer by using an adaptive credit redistribution algorithm in a Bluetooth scatter mode.
2. Description of the Prior Art
The Bluetooth technology has been basically developed to remove cables for connecting devices such as mobile phone headsets, handsets, portable computers, and so on. Bluetooth technology is a wireless technology of low-cost, low power consumption, and short range. The Bluetooth operates in the unlicensed 2.4 GHz ISM (Industrial, Scientific, and Medical) band, the master in a Bluetooth network refers to a Bluetooth device initializing data exchanges, and slaves refer to Bluetooth devices responding to the master.
One master can connect to up to seven active slaves, and, as such, a network formed through the connections of one master to one or more slaves is referred to as a piconet. All slaves in the piconet use a master's clock and address so as to be synchronized to the master's frequency hopping sequence.
The Bluetooth technology may need to connect such piconets to one another in an aspect of the characteristics of an ad-hoc network, which configures a scatternet, accordingly. That is, the scatternet refers to a collection of piconets linked to one another by a common unit.
FIG. 1A and FIG. 1B are views for explaining a scatternet of a Bluetooth system. FIG. 1A shows a unit 15 interconnecting piconets 10 and 20 and operating as a slave in both piconets 10 and 20, and FIG. 1B shows a unit 35 interconnecting piconets 30 and 40, and operating as a master in one piconet 30 and as a slave in the other piconet 40.
As shown in FIGS. 1A and 1B, the units 15 and 35 interconnecting the piconets operate as slaves in both piconets, and operate as a master in one piconet and as a slave in the other piconet, respectively, but do not operate as masters in the two different piconets, which is because a piconet is a collection of devices following a frequency hopping sequence determined by the Bluetooth clock and the Bluetooth device address of a master. That is, all devices having the same master form the same piconet, and two different masters have to form two piconets.
In the meantime, a unit interconnecting multiple piconets is referred to as a Participant in Multiple piconets (PMP) node. That is, the PMP node is a common unit simultaneously connected to the multiple piconets, and the operations of such PMP nodes follow a scatter mode. The scatter mode is a connection mode proposed for efficient operations of a Bluetooth scatternet, which enables time division-based devices to simultaneously participate in multiple piconets.
The scatter mode defines a presence point (PP) which is a point of time that a PMP node must operate in each piconet, and uses a scheme enabling communications with a corresponding piconet at a scheduled PP only.
However, since it is not likely that a corresponding master and slaves for piconet communications would be enabled to perform communications at a PP all the time, a scheduling algorithm for the credit-based scheme has been proposed to efficiently manage the piconet communications. The credit-based scheme assigns a relatively high priority to a link to which unfair service opportunities have been given, to thereby provide fairness for relative service opportunities. To do so, the number of slots available for each device with respect to each link is calculated, which is represented as credits. One credit represents that one slot is available from a corresponding link.
FIG. 2 is a view for explaining a credit scheme. FIG. 2 shows an event in which three piconets are interconnected at a PMP node so that there exist three links Link1, Link2, and Link3. In such circumstances, a credit value is given to each link, and a value for a temporary account provided to keep the overall sum of credits consistent is set. The overall sum of credits becomes ‘0’ at the beginning of operations.
FIG. 2 shows a state in which a communication event (CE) happens at the link Link1 with the highest credit value for the first time. The credit account of the link Link1 in communication is decremented by one credit every slot, and the credit accounts of the links Link2 and Link3 remain unchanged.
The temporary account is increased by one credit every slot. If the temporary account holds 3 credits, the number of which is equal to the total number of links, the temporary account is decremented by 3, that is, by the total number of links, and the decremented credits are equally distributed to each link so that the credit account of each link is incremented by one. The credit accounts except for the temporary account limit their credits to Nmax-credit, through which the maximum available burst by link is limited.
In FIG. 2, if the credit account of the link Link1 has credits of 2 and the credit account of the link Link2 holds credits of −1 when the second PP occurs, the link Link1 keeps carrying out communications. However, at the third PP, the credit account of the link Link1 holds credits of −1 and the credit account of the link Link3 holds a credit of 0, so that the link Link1 stops its communications and the link Link3 carries out its communications.
In the meantime, when a new link is added, the credit account of the new link is initialized to a credit of 0, and, on the contrary, when one link is disconnected, the credits of the link are added to the temporary account and then evenly distributed to the remaining links. Further, as aforementioned, a link carrying out communications stops its ongoing communications when a different link has a higher credit at a new PP or there is no polling during Tscatter-poll slot, and, when communications are terminated early with the lapse of a timeout period due to a POLL-NULL sequence or transmission errors, a connection is made in advance for a next PP in order for the new link to start communications regardless of credits.
In the event that communications are interrupted in a state of a POLL-NULL sequence or no further data can be transmitted or received, the credits of the link are distributed to the other links. At this time, a redistributed credit amount is calculated in Equation 1 as follows:
                    C        =                  max          (                                    [                                                                    n                    -                    1                                    n                                ⁢                                  (                                                            a                      ⁢                                                                                          ⁢                                              c                        red                                                              -                                          a                      ⁢                                                                                          ⁢                                              c                        min                                                                              )                                            ]                        ,                                                         [                                                                            n                      -                      1                                        n                                    ⁢                                      (                                                                  a                        ⁢                                                                                                  ⁢                                                  c                          red                                                                    -                                              a                        ⁢                                                                                                  ⁢                                                  c                          max                                                                    +                                              N                                                  switch                          ⁢                                                      -                                                    ⁢                          th                                                                                      )                                                  ]                            )                        ,                                              [                  Equation          ⁢                                          ⁢          1                ]            
wherein n denotes the total number of links, acred denotes a credit value for a link to be redistributed, acmax denotes the maximum credit value out of credit values of links to be redistributed, acmin denotes the minimum credit value out of credit values of links to be redistributed, and Nswitch-th denotes a threshold value for preventing frequent switchovers among piconets.
The credit account of a corresponding link is decremented as much as a credit amount calculated in Equation 1, and such a credit amount is evenly redistributed to the remaining links. According to the above scheme, fairness in service opportunities is provided to links.
Meanwhile, the credit scheme is an effective way supporting the operations of the Bluetooth scatternet, but it has a problem that efficient scheduling cannot be supported according to traffic characteristics of each master-slave pair or each piconet connected to a PMP node. In particular, considering the performance with respect to QoS, such a scheme has a problem that it is difficult to efficiently allocate resources in consideration of diverse data traffic characteristics of links.